package com.jzg.sys.api.base;

import java.util.List;

import com.jzg.sys.dao.entity.BaseFile;
import com.jzg.sys.dao.entity.BaseFileDetail;

/** 
 * @Package com.jzg.api.base 
 * @ClassName: BaseFileService 
 * @Description: 公用文件管理、图片管理 
 * @author 李志鹏 lzp
 * @date 2017年7月31日 下午2:46:27 
 *  
 */
public interface BaseFileService {

	/**
	 * @Title: findDetail 
	 * @Description: 查询所有图片
	 * @param id
	 * @return
	 * @author 李志鹏 lzp  
	 * @date 2018年1月9日 下午2:42:38 
	 */
	List<BaseFileDetail> findDetail(String id);

	void saveFileDetail(BaseFileDetail baseFileDetail);

	int delByFileName(String substring);

	BaseFile getBaseFileByCode(String useCode, String sysCode);
	
	/** 
	 * @Title: getImgUrl 
	 * @Description: 获取单图 
	 * @param useCode 用途编码
	 * @param tableId 业务id
	 * @return
	 * @author 李志鹏 lzp 
	 * @date 2017年8月1日 下午6:19:45 
	 */
	public String getImgUrl(String useCode, String tableId, String sysCode);

	/** 
	 * @Title: getFileName 
	 * @Description: 获取原文件名 
	 * @param useCode 用途编码
	 * @param tableId 业务id
	 * @param sysCode 系统编码
	 * @return
	 * @author 李志鹏 lzp 
	 * @date 2017年8月13日 下午12:21:01 
	 */
	public String getFileName(String useCode, String tableId, String sysCode);
	
	/** 
	 * @Title: getFileName 
	 * @Description: 获取文件路径 
	 * @param useCode 用途编码
	 * @param tableId 业务id
	 * @param sysCode 系统编码
	 * @return
	 * @author 李志鹏 lzp 
	 * @date 2017年8月13日 下午12:21:01 
	 */
	public String getFileUrl(String useCode, String tableId, String sysCode);
	
	/** 
	 * @Title: getImgUrls 
	 * @Description: 获取多图 
	 * @param useCode 用途编码
	 * @param tableId 业务id
	 * @return
	 * @author 李志鹏 lzp 
	 * @date 2017年8月1日 下午6:20:08 
	 */
	public List<String> getImgUrls(String useCode, String tableId, String sysCode);
	
	/** 
	 * @Title: getFileMaxSortNo 
	 * @Description: 获取最大排序号,没有时返回0
	 * @param useCode 用途编码 
	 * @param tableId 业务id
	 * @return
	 * @author 李志鹏 lzp 
	 * @date 2017年8月1日 下午6:20:28 
	 */
	Long getFileMaxSortNo(String useCode, String tableId, String sysCode);

	/** 
	 * @Title: findDetailByTableId 
	 * @Description: 查询多图 
	 * @param useCode
	 * @param tableId
	 * @param sysCode
	 * @return
	 * @author 李志鹏 lzp  
	 * @date 2018年1月9日 下午2:41:34 
	 */
	List<BaseFileDetail> findDetailByTableId(String useCode, String tableId, String sysCode);

	/** 
	 * @Title: delImg 
	 * @Description: 多图控件删除图片 
	 * @param useCode
	 * @param tableId
	 * @param sortNo
	 * @param sysCode
	 * @author 李志鹏 lzp  
	 * @date 2018年1月9日 下午3:12:06 
	 */
	public void delImgBySortNo(String useCode, String tableId, Long sortNo, String sysCode);


}
